unique = {
 'des': frozenset([(4, 'ror'),
                   (4, 'test'),
                   (16, 'shl'),
                   (28, 'or'),
                   (63, 'and'),
                   (2097152, 'xor'),
                   (16711935, 'and'),
                   (858993459, 'and'),
                   (4294901760, 'and')]),
 'md5': frozenset([(4, 'rol'),
                   (6, 'rol'),
                   (7, 'rol'),
                   (9, 'rol'),
                   (10, 'rol'),
                   (11, 'rol'),
                   (12, 'rol'),
                   (14, 'rol'),
                   (15, 'rol'),
                   (16, 'rol'),
                   (17, 'rol'),
                   (20, 'rol'),
                   (21, 'rol'),
                   (22, 'rol'),
                   (23, 'rol'),
                   (52, 'add'),
                   (4096, 'sub')]),
# 'rc4': frozenset([(2, 'xor'), (256, 'cmp')]), # too small
 'rsa': frozenset([(1, 'and'),
                   (1, 'rol'),
                   (1, 'sar'),
                   (1, 'shr'),
                   (1, 'test'),
                   (2, 'and'),
                   (2, 'ror'),
                   (2, 'sar'),
                   (3, 'and'),
                   (3, 'cmp'),
                   (3, 'sar'),
                   (3, 'test'),
                   (4, 'dec'),
                   (4, 'inc'),
                   (4, 'sub'),
                   (5, 'sar'),
                   (5, 'shl'),
                   (6, 'shl'),
                   (7, 'add'),
                   (7, 'and'),
                   (7, 'cmp'),
                   (8, 'sub'),
                   (8, 'test'),
                   (10, 'cmp'),
                   (12, 'cmp'),
                   (12, 'inc'),
                   (12, 'xor'),
                   (15, 'and'),
                   (16, 'and'),
                   (16, 'cmp'),
                   (16, 'test'),
                   (20, 'cmp'),
                   (20, 'xor'),
                   (23, 'cmp'),
                   (24, 'imul'),
                   (24, 'xor'),
                   (28, 'sub'),
                   (28, 'xor'),
                   (29, 'shr'),
                   (31, 'add'),
                   (31, 'and'),
                   (31, 'shr'),
                   (32, 'cmp'),
                   (32, 'sub'),
                   (32, 'xor'),
                   (36, 'cmp'),
                   (36, 'xor'),
                   (40, 'cmp'),
                   (40, 'xor'),
                   (44, 'cmp'),
                   (44, 'xor'),
                   (48, 'cmp'),
                   (48, 'xor'),
                   (52, 'xor'),
                   (56, 'cmp'),
                   (56, 'sub'),
                   (56, 'xor'),
                   (60, 'cmp'),
                   (60, 'xor'),
                   (64, 'cmp'),
                   (68, 'add'),
                   (72, 'add'),
                   (72, 'cmp'),
                   (76, 'cmp'),
                   (80, 'cmp'),
                   (92, 'add'),
                   (92, 'cmp'),
                   (156, 'add'),
                   (224, 'cmp'),
                   (245, 'add'),
                   (252, 'add'),
                   (255, 'or'),
                   (512, 'cmp'),
                   (2048, 'cmp'),
                   (4278190080, 'test'),
                   (4294967292, 'test')])
}

intersect = {
# not usable
# 'aes': frozenset([(1, 'sub'),
#                   (4, 'add'),
#                   (4, 'xor'),
#                   (8, 'add'),
#                   (8, 'shr'),
#                   (8, 'xor'),
#                   (12, 'add'),
#                   (16, 'add'),
#                   (16, 'shr'),
#                   (16, 'sub'),
#                   (16, 'xor'),
#                   (20, 'add'),
#                   (24, 'add'),
#                   (24, 'shr'),
#                   (28, 'cmp'),
#                   (255, 'and'),
#                   (17744, 'cmp')]),
 'des': frozenset([(1, 'cmp'),
                   (2, 'add'),
                   (2, 'shr'),
                   (4, 'add'),
                   (4, 'and'),
                   (4, 'cmp'),
                   (4, 'ror'),
                   (4, 'test'),
                   (4, 'xor'),
                   (8, 'add'),
                   (8, 'and'),
                   (8, 'cmp'),
                   (8, 'shl'),
                   (8, 'shr'),
                   (8, 'xor'),
                   (12, 'add'),
                   (16, 'add'),
                   (16, 'shl'),
                   (16, 'shr'),
                   (16, 'sub'),
                   (16, 'xor'),
                   (20, 'add'),
                   (24, 'add'),
                   (24, 'shr'),
                   (24, 'sub'),
                   (28, 'cmp'),
                   (28, 'or'),
                   (32, 'add'),
                   (48, 'add'),
                   (63, 'and'),
                   (248, 'and'),
                   (255, 'cmp'),
                   (17744, 'cmp'),
                   (2097152, 'xor'),
                   (4194304, 'cmp'),
                   (16711935, 'and'),
                   (858993459, 'and'),
                   (4294901760, 'and'),
                   (4294963200, 'and')]),
 'md5': frozenset([(4, 'add'),
                   (4, 'and'),
                   (4, 'rol'),
                   (4, 'xor'),
                   (5, 'rol'),
                   (6, 'rol'),
                   (7, 'rol'),
                   (8, 'add'),
                   (8, 'and'),
                   (8, 'xor'),
                   (9, 'rol'),
                   (10, 'rol'),
                   (11, 'rol'),
                   (12, 'add'),
                   (12, 'rol'),
                   (14, 'rol'),
                   (15, 'rol'),
                   (16, 'add'),
                   (16, 'rol'),
                   (16, 'sub'),
                   (16, 'xor'),
                   (17, 'rol'),
                   (20, 'add'),
                   (20, 'rol'),
                   (21, 'rol'),
                   (22, 'rol'),
                   (23, 'rol'),
                   (24, 'add'),
                   (28, 'add'),
                   (28, 'cmp'),
                   (32, 'add'),
                   (36, 'add'),
                   (40, 'add'),
                   (44, 'add'),
                   (48, 'add'),
                   (52, 'add'),
                   (56, 'add'),
                   (64, 'add'),
                   (255, 'cmp'),
                   (4096, 'sub'),
                   (4194304, 'cmp'),
                   (4294963200, 'and')]),
# not usable
# 'rc4': frozenset([(2, 'xor'),
#                   (4, 'and'),
#                   (4, 'xor'),
#                   (8, 'add'),
#                   (8, 'and'),
#                   (8, 'cmp'),
#                   (8, 'xor'),
#                   (12, 'add'),
#                   (16, 'add'),
#                   (16, 'sub'),
#                   (16, 'xor'),
#                   (20, 'add'),
#                   (20, 'sub'),
#                   (24, 'add'),
#                   (24, 'cmp'),
#                   (28, 'cmp'),
#                   (48, 'add'),
#                   (248, 'and'),
#                   (255, 'and'),
#                   (255, 'cmp'),
#                   (256, 'cmp'),
#                   (4194304, 'cmp')]),
 'rsa': frozenset([(1, 'and'),
                   (1, 'cmp'),
                   (1, 'rol'),
                   (1, 'sar'),
                   (1, 'shr'),
                   (1, 'sub'),
                   (1, 'test'),
                   (2, 'add'),
                   (2, 'and'),
                   (2, 'ror'),
                   (2, 'sar'),
                   (2, 'shr'),
                   (3, 'and'),
                   (3, 'cmp'),
                   (3, 'sar'),
                   (3, 'test'),
                   (4, 'add'),
                   (4, 'cmp'),
                   (4, 'dec'),
                   (4, 'inc'),
                   (4, 'sub'),
                   (4, 'xor'),
                   (5, 'rol'),
                   (5, 'sar'),
                   (5, 'shl'),
                   (6, 'shl'),
                   (7, 'add'),
                   (7, 'and'),
                   (7, 'cmp'),
                   (8, 'add'),
                   (8, 'and'),
                   (8, 'cmp'),
                   (8, 'shl'),
                   (8, 'shr'),
                   (8, 'sub'),
                   (8, 'test'),
                   (8, 'xor'),
                   (10, 'cmp'),
                   (12, 'add'),
                   (12, 'cmp'),
                   (12, 'inc'),
                   (12, 'xor'),
                   (15, 'and'),
                   (16, 'add'),
                   (16, 'and'),
                   (16, 'cmp'),
                   (16, 'shr'),
                   (16, 'sub'),
                   (16, 'test'),
                   (16, 'xor'),
                   (20, 'add'),
                   (20, 'cmp'),
                   (20, 'sub'),
                   (20, 'xor'),
                   (23, 'cmp'),
                   (24, 'add'),
                   (24, 'cmp'),
                   (24, 'imul'),
                   (24, 'shr'),
                   (24, 'sub'),
                   (24, 'xor'),
                   (28, 'add'),
                   (28, 'cmp'),
                   (28, 'sub'),
                   (28, 'xor'),
                   (29, 'shr'),
                   (31, 'add'),
                   (31, 'and'),
                   (31, 'shr'),
                   (32, 'add'),
                   (32, 'cmp'),
                   (32, 'sub'),
                   (32, 'xor'),
                   (36, 'add'),
                   (36, 'cmp'),
                   (36, 'xor'),
                   (40, 'add'),
                   (40, 'cmp'),
                   (40, 'xor'),
                   (44, 'add'),
                   (44, 'cmp'),
                   (44, 'xor'),
                   (48, 'add'),
                   (48, 'cmp'),
                   (48, 'xor'),
                   (52, 'xor'),
                   (56, 'add'),
                   (56, 'cmp'),
                   (56, 'sub'),
                   (56, 'xor'),
                   (60, 'cmp'),
                   (60, 'xor'),
                   (64, 'add'),
                   (64, 'cmp'),
                   (68, 'add'),
                   (72, 'add'),
                   (72, 'cmp'),
                   (76, 'cmp'),
                   (80, 'cmp'),
                   (92, 'add'),
                   (92, 'cmp'),
                   (156, 'add'),
                   (224, 'cmp'),
                   (245, 'add'),
                   (252, 'add'),
                   (255, 'cmp'),
                   (255, 'or'),
                   (512, 'cmp'),
                   (2048, 'cmp'),
                   (4278190080, 'test'),
                   (4294963200, 'and'),
                   (4294967292, 'test')])}


implementation = {
'aes': {'beecrypt': frozenset([(1, 'cmp'),
                                (1, 'sub'),
                                (1, 'xor'),
                                (2, 'add'),
                                (3, 'shr'),
                                (4, 'add'),
                                (4, 'and'),
                                (4, 'shl'),
                                (4, 'xor'),
                                (5, 'shr'),
                                (6, 'add'),
                                (8, 'add'),
                                (8, 'and'),
                                (8, 'shr'),
                                (8, 'sub'),
                                (8, 'xor'),
                                (10, 'cmp'),
                                (12, 'add'),
                                (12, 'xor'),
                                (16, 'add'),
                                (16, 'and'),
                                (16, 'shr'),
                                (16, 'sub'),
                                (16, 'xor'),
                                (20, 'add'),
                                (20, 'xor'),
                                (24, 'add'),
                                (24, 'shr'),
                                (24, 'xor'),
                                (28, 'cmp'),
                                (28, 'xor'),
                                (32, 'add'),
                                (32, 'cmp'),
                                (32, 'xor'),
                                (36, 'add'),
                                (36, 'xor'),
                                (40, 'cmp'),
                                (40, 'xor'),
                                (44, 'xor'),
                                (48, 'xor'),
                                (52, 'xor'),
                                (56, 'xor'),
                                (60, 'xor'),
                                (63, 'test'),
                                (64, 'xor'),
                                (68, 'xor'),
                                (72, 'xor'),
                                (76, 'xor'),
                                (80, 'xor'),
                                (84, 'xor'),
                                (88, 'xor'),
                                (92, 'xor'),
                                (96, 'xor'),
                                (100, 'xor'),
                                (104, 'xor'),
                                (108, 'xor'),
                                (112, 'xor'),
                                (116, 'cmp'),
                                (116, 'xor'),
                                (120, 'xor'),
                                (124, 'xor'),
                                (128, 'cmp'),
                                (128, 'xor'),
                                (132, 'xor'),
                                (136, 'xor'),
                                (140, 'xor'),
                                (144, 'xor'),
                                (148, 'xor'),
                                (152, 'xor'),
                                (156, 'xor'),
                                (232, 'cmp'),
                                (255, 'and'),
                                (255, 'cmp'),
                                (267, 'cmp'),
                                (336, 'add'),
                                (336, 'sub'),
                                (340, 'cmp'),
                                (17744, 'cmp'),
                                (65280, 'and'),
                                (4194304, 'cmp'),
                                (4206592, 'cmp'),
                                (4206608, 'cmp'),
                                (4206612, 'cmp'),
                                (4206636, 'cmp'),
                                (4207496, 'cmp'),
                                (16711680, 'and'),
                                (268505456, 'xor'),
                                (268506480, 'xor'),
                                (268507504, 'xor'),
                                (268508528, 'xor'),
                                (268515696, 'xor'),
                                (4278190080, 'and')]),
         'cryptopp': frozenset([(1, 'add'),
                                (1, 'and'),
                                (1, 'cmp'),
                                (1, 'or'),
                                (1, 'sar'),
                                (1, 'sub'),
                                (1, 'test'),
                                (1, 'xor'),
                                (2, 'add'),
                                (2, 'and'),
                                (2, 'cmp'),
                                (2, 'or'),
                                (2, 'shl'),
                                (2, 'shr'),
                                (2, 'test'),
                                (2, 'xor'),
                                (3, 'add'),
                                (3, 'and'),
                                (3, 'cmp'),
                                (3, 'test'),
                                (3, 'xor'),
                                (4, 'add'),
                                (4, 'and'),
                                (4, 'cmp'),
                                (4, 'dec'),
                                (4, 'inc'),
                                (4, 'or'),
                                (4, 'shl'),
                                (4, 'sub'),
                                (4, 'test'),
                                (4, 'xor'),
                                (5, 'cmp'),
                                (5, 'sar'),
                                (5, 'shl'),
                                (6, 'sar'),
                                (6, 'shl'),
                                (7, 'add'),
                                (7, 'and'),
                                (7, 'shl'),
                                (7, 'shr'),
                                (8, 'add'),
                                (8, 'and'),
                                (8, 'cmp'),
                                (8, 'dec'),
                                (8, 'inc'),
                                (8, 'or'),
                                (8, 'shl'),
                                (8, 'shr'),
                                (8, 'sub'),
                                (8, 'test'),
                                (8, 'xor'),
                                (9, 'add'),
                                (9, 'cmp'),
                                (10, 'cmp'),
                                (12, 'add'),
                                (12, 'and'),
                                (12, 'cmp'),
                                (12, 'div'),
                                (12, 'imul'),
                                (12, 'inc'),
                                (12, 'or'),
                                (12, 'sub'),
                                (12, 'test'),
                                (14, 'sub'),
                                (15, 'and'),
                                (16, 'add'),
                                (16, 'and'),
                                (16, 'cmp'),
                                (16, 'div'),
                                (16, 'imul'),
                                (16, 'or'),
                                (16, 'shl'),
                                (16, 'shr'),
                                (16, 'sub'),
                                (16, 'test'),
                                (16, 'xor'),
                                (20, 'add'),
                                (20, 'cmp'),
                                (20, 'imul'),
                                (20, 'mul'),
                                (20, 'sub'),
                                (23, 'shr'),
                                (24, 'add'),
                                (24, 'and'),
                                (24, 'cmp'),
                                (24, 'shr'),
                                (24, 'sub'),
                                (24, 'test'),
                                (25, 'shl'),
                                (28, 'add'),
                                (28, 'cmp'),
                                (28, 'inc'),
                                (28, 'or'),
                                (28, 'sub'),
                                (29, 'or'),
                                (29, 'test'),
                                (31, 'and'),
                                (31, 'shr'),
                                (32, 'add'),
                                (32, 'cmp'),
                                (32, 'or'),
                                (32, 'sub'),
                                (32, 'test'),
                                (34, 'cmp'),
                                (36, 'add'),
                                (36, 'cmp'),
                                (40, 'add'),
                                (40, 'cmp'),
                                (44, 'add'),
                                (44, 'cmp'),
                                (44, 'sub'),
                                (48, 'add'),
                                (48, 'sub'),
                                (50, 'cmp'),
                                (56, 'add'),
                                (60, 'add'),
                                (60, 'cmp'),
                                (61, 'cmp'),
                                (64, 'add'),
                                (64, 'and'),
                                (64, 'cmp'),
                                (64, 'test'),
                                (68, 'add'),
                                (68, 'cmp'),
                                (72, 'sub'),
                                (76, 'sub'),
                                (80, 'sub'),
                                (83, 'cmp'),
                                (84, 'add'),
                                (84, 'sub'),
                                (92, 'add'),
                                (92, 'cmp'),
                                (97, 'cmp'),
                                (112, 'and'),
                                (112, 'or'),
                                (112, 'test'),
                                (114, 'cmp'),
                                (119, 'cmp'),
                                (127, 'and'),
                                (128, 'and'),
                                (128, 'test'),
                                (130, 'and'),
                                (130, 'cmp'),
                                (130, 'test'),
                                (131, 'test'),
                                (144, 'cmp'),
                                (148, 'sub'),
                                (152, 'sub'),
                                (180, 'add'),
                                (192, 'cmp'),
                                (224, 'cmp'),
                                (239, 'and'),
                                (240, 'cmp'),
                                (245, 'add'),
                                (248, 'and'),
                                (252, 'and'),
                                (252, 'cmp'),
                                (253, 'cmp'),
                                (254, 'cmp'),
                                (255, 'and'),
                                (255, 'cmp'),
                                (255, 'or'),
                                (255, 'sbb'),
                                (255, 'test'),
                                (255, 'xor'),
                                (256, 'cmp'),
                                (256, 'sub'),
                                (257, 'cmp'),
                                (264, 'and'),
                                (264, 'test'),
                                (268, 'test'),
                                (283, 'imul'),
                                (448, 'xor'),
                                (452, 'xor'),
                                (464, 'xor'),
                                (468, 'xor'),
                                (480, 'sub'),
                                (484, 'cmp'),
                                (492, 'add'),
                                (512, 'cmp'),
                                (720, 'pxor'),
                                (736, 'paddd'),
                                (768, 'cmp'),
                                (772, 'test'),
                                (776, 'add'),
                                (896, 'sub'),
                                (1024, 'cmp'),
                                (1308, 'sub'),
                                (2048, 'add'),
                                (2048, 'cmp'),
                                (3840, 'and'),
                                (3840, 'cmp'),
                                (4095, 'and'),
                                (4096, 'sub'),
                                (4096, 'test'),
                                (6848, 'and'),
                                (6856, 'cmp'),
                                (6864, 'sub'),
                                (17744, 'cmp'),
                                (32768, 'test'),
                                (56797, 'cmp'),
                                (65000, 'cmp'),
                                (65001, 'cmp'),
                                (65536, 'or'),
                                (524288, 'or'),
                                (2097152, 'xor'),
                                (4194304, 'cmp'),
                                (4194304, 'sub'),
                                (4194328, 'cmp'),
                                (4194420, 'cmp'),
                                (4194536, 'cmp'),
                                (4336788, 'cmp'),
                                (4336820, 'cmp'),
                                (4369472, 'cmp'),
                                (4369524, 'cmp'),
                                (4370064, 'cmp'),
                                (4370560, 'cmp'),
                                (4370592, 'cmp'),
                                (4370876, 'cmp'),
                                (4371440, 'cmp'),
                                (4372504, 'cmp'),
                                (4372512, 'cmp'),
                                (4372752, 'test'),
                                (4372984, 'cmp'),
                                (4375064, 'cmp'),
                                (4375092, 'cmp'),
                                (4377448, 'cmp'),
                                (4377596, 'and'),
                                (4377632, 'cmp'),
                                (4377640, 'inc'),
                                (4377652, 'cmp'),
                                (4378476, 'cmp'),
                                (4378876, 'cmp'),
                                (4378884, 'cmp'),
                                (4384660, 'cmp'),
                                (4384662, 'cmp'),
                                (4384664, 'cmp'),
                                (4384672, 'cmp'),
                                (4384700, 'and'),
                                (4384708, 'cmp'),
                                (4384736, 'add'),
                                (4384736, 'sub'),
                                (4385004, 'cmp'),
                                (4385008, 'cmp'),
                                (4385036, 'cmp'),
                                (4385040, 'cmp'),
                                (4389152, 'cmp'),
                                (16711680, 'test'),
                                (33554432, 'test'),
                                (67108864, 'test'),
                                (452984832, 'imul'),
                                (1073741823, 'cmp'),
                                (2147483632, 'cmp'),
                                (2147483647, 'cmp'),
                                (2164326656, 'test'),
                                (4243651808, 'test'),
                                (4278190080, 'test'),
                                (4294443007, 'and'),
                                (4294963200, 'and'),
                                (4294966911, 'and')]),
         'gladman': frozenset([(1, 'add'),
                               (1, 'and'),
                               (1, 'sar'),
                               (1, 'sub'),
                               (4, 'add'),
                               (4, 'cmp'),
                               (4, 'shl'),
                               (4, 'xor'),
                               (8, 'add'),
                               (8, 'cmp'),
                               (8, 'shr'),
                               (8, 'xor'),
                               (12, 'add'),
                               (12, 'cmp'),
                               (12, 'xor'),
                               (15, 'and'),
                               (16, 'add'),
                               (16, 'and'),
                               (16, 'cmp'),
                               (16, 'shl'),
                               (16, 'shr'),
                               (16, 'sub'),
                               (16, 'xor'),
                               (20, 'add'),
                               (20, 'cmp'),
                               (20, 'sub'),
                               (20, 'xor'),
                               (24, 'add'),
                               (24, 'cmp'),
                               (24, 'shr'),
                               (24, 'sub'),
                               (24, 'xor'),
                               (28, 'cmp'),
                               (28, 'xor'),
                               (32, 'xor'),
                               (36, 'cmp'),
                               (36, 'xor'),
                               (40, 'xor'),
                               (44, 'xor'),
                               (48, 'cmp'),
                               (48, 'xor'),
                               (52, 'xor'),
                               (56, 'cmp'),
                               (56, 'sub'),
                               (56, 'xor'),
                               (57, 'cmp'),
                               (60, 'add'),
                               (60, 'xor'),
                               (64, 'xor'),
                               (65, 'cmp'),
                               (68, 'add'),
                               (68, 'cmp'),
                               (68, 'xor'),
                               (69, 'cmp'),
                               (70, 'cmp'),
                               (72, 'xor'),
                               (76, 'xor'),
                               (80, 'cmp'),
                               (80, 'xor'),
                               (84, 'xor'),
                               (88, 'xor'),
                               (92, 'cmp'),
                               (92, 'xor'),
                               (96, 'xor'),
                               (100, 'cmp'),
                               (100, 'xor'),
                               (104, 'xor'),
                               (108, 'xor'),
                               (112, 'xor'),
                               (116, 'xor'),
                               (120, 'xor'),
                               (124, 'xor'),
                               (128, 'xor'),
                               (132, 'xor'),
                               (136, 'cmp'),
                               (136, 'xor'),
                               (140, 'xor'),
                               (144, 'xor'),
                               (148, 'xor'),
                               (152, 'xor'),
                               (156, 'xor'),
                               (160, 'cmp'),
                               (160, 'xor'),
                               (164, 'xor'),
                               (168, 'xor'),
                               (172, 'xor'),
                               (192, 'and'),
                               (192, 'cmp'),
                               (192, 'sub'),
                               (204, 'add'),
                               (204, 'sub'),
                               (208, 'cmp'),
                               (228, 'add'),
                               (236, 'add'),
                               (255, 'and'),
                               (336, 'add'),
                               (336, 'sub'),
                               (840, 'add'),
                               (840, 'cmp'),
                               (840, 'sub'),
                               (17744, 'cmp'),
                               (18000, 'imul'),
                               (23117, 'cmp'),
                               (36969, 'imul'),
                               (65535, 'and'),
                               (4319456, 'xor'),
                               (4319460, 'xor'),
                               (4319464, 'xor'),
                               (4319468, 'xor'),
                               (4319472, 'xor'),
                               (4319476, 'xor'),
                               (4319480, 'xor'),
                               (4319484, 'xor'),
                               (4319488, 'xor'),
                               (4319492, 'xor'),
                               (4320544, 'xor'),
                               (4321568, 'xor'),
                               (4322592, 'xor'),
                               (4324640, 'xor'),
                               (4325664, 'xor'),
                               (4326688, 'xor'),
                               (4348132, 'cmp'),
                               (4348928, 'cmp'),
                               (4349952, 'cmp'),
                               (4349956, 'cmp'),
                               (4349964, 'cmp'),
                               (4349996, 'cmp'),
                               (4350000, 'cmp'),
                               (4350292, 'add'),
                               (4350303, 'cmp'),
                               (4350316, 'cmp'),
                               (4350320, 'cmp'),
                               (4351352, 'cmp'),
                               (4351404, 'cmp'),
                               (1215460705, 'sub'),
                               (1936487777, 'sub'),
                               (1953391939, 'sub'),
                               (3435973836, 'cmp'),
                               (4294901760, 'and')]),
         'openssl': frozenset([(1, 'cmp'),
                               (1, 'sar'),
                               (1, 'sub'),
                               (2, 'add'),
                               (3, 'cmp'),
                               (4, 'add'),
                               (4, 'and'),
                               (4, 'cmp'),
                               (4, 'test'),
                               (4, 'xor'),
                               (7, 'and'),
                               (8, 'add'),
                               (8, 'and'),
                               (8, 'rol'),
                               (8, 'ror'),
                               (8, 'shr'),
                               (8, 'xor'),
                               (12, 'add'),
                               (12, 'xor'),
                               (15, 'and'),
                               (16, 'add'),
                               (16, 'cmp'),
                               (16, 'shr'),
                               (16, 'sub'),
                               (16, 'test'),
                               (16, 'xor'),
                               (20, 'add'),
                               (20, 'xor'),
                               (24, 'add'),
                               (24, 'shr'),
                               (24, 'sub'),
                               (24, 'xor'),
                               (28, 'add'),
                               (28, 'cmp'),
                               (28, 'xor'),
                               (32, 'add'),
                               (32, 'cmp'),
                               (32, 'xor'),
                               (48, 'add'),
                               (48, 'xor'),
                               (104, 'test'),
                               (116, 'cmp'),
                               (128, 'cmp'),
                               (192, 'cmp'),
                               (232, 'cmp'),
                               (255, 'and'),
                               (255, 'cmp'),
                               (256, 'cmp'),
                               (267, 'cmp'),
                               (2048, 'cmp'),
                               (2240, 'add'),
                               (2240, 'sub'),
                               (2244, 'cmp'),
                               (17744, 'cmp'),
                               (65280, 'and'),
                               (2097152, 'xor'),
                               (4194304, 'cmp'),
                               (4336544, 'xor'),
                               (4337568, 'xor'),
                               (4338592, 'xor'),
                               (4339616, 'xor'),
                               (4345020, 'cmp'),
                               (4408352, 'cmp'),
                               (4408368, 'cmp'),
                               (4408372, 'cmp'),
                               (4415644, 'cmp'),
                               (4416512, 'cmp'),
                               (16711680, 'and'),
                               (16711935, 'and'),
                               (16777216, 'xor'),
                               (4278190080, 'and'),
                               (4278255360, 'and'),
                               (4294963200, 'and')])},
 'des': {'cryptopp': frozenset([(1, 'add'),
                                (1, 'and'),
                                (1, 'cmp'),
                                (1, 'or'),
                                (1, 'rol'),
                                (1, 'ror'),
                                (1, 'sar'),
                                (1, 'sub'),
                                (1, 'test'),
                                (2, 'add'),
                                (2, 'and'),
                                (2, 'cmp'),
                                (2, 'or'),
                                (2, 'sar'),
                                (2, 'shl'),
                                (2, 'shr'),
                                (2, 'test'),
                                (2, 'xor'),
                                (3, 'add'),
                                (3, 'and'),
                                (3, 'cmp'),
                                (3, 'sar'),
                                (3, 'test'),
                                (4, 'add'),
                                (4, 'and'),
                                (4, 'cmp'),
                                (4, 'dec'),
                                (4, 'inc'),
                                (4, 'or'),
                                (4, 'rol'),
                                (4, 'ror'),
                                (4, 'sub'),
                                (4, 'test'),
                                (4, 'xor'),
                                (5, 'cmp'),
                                (5, 'sar'),
                                (5, 'shl'),
                                (6, 'rol'),
                                (6, 'ror'),
                                (6, 'sar'),
                                (6, 'shl'),
                                (7, 'and'),
                                (7, 'shl'),
                                (8, 'add'),
                                (8, 'and'),
                                (8, 'cmp'),
                                (8, 'dec'),
                                (8, 'inc'),
                                (8, 'or'),
                                (8, 'shl'),
                                (8, 'shr'),
                                (8, 'sub'),
                                (8, 'test'),
                                (8, 'xor'),
                                (9, 'add'),
                                (9, 'cmp'),
                                (9, 'rol'),
                                (9, 'ror'),
                                (10, 'cmp'),
                                (12, 'add'),
                                (12, 'and'),
                                (12, 'cmp'),
                                (12, 'div'),
                                (12, 'imul'),
                                (12, 'inc'),
                                (12, 'or'),
                                (12, 'sub'),
                                (12, 'test'),
                                (14, 'sub'),
                                (15, 'and'),
                                (16, 'add'),
                                (16, 'and'),
                                (16, 'cmp'),
                                (16, 'div'),
                                (16, 'imul'),
                                (16, 'or'),
                                (16, 'shl'),
                                (16, 'shr'),
                                (16, 'sub'),
                                (16, 'test'),
                                (16, 'xor'),
                                (18, 'rol'),
                                (18, 'ror'),
                                (20, 'add'),
                                (20, 'cmp'),
                                (20, 'imul'),
                                (20, 'mul'),
                                (20, 'rol'),
                                (20, 'ror'),
                                (20, 'sub'),
                                (24, 'add'),
                                (24, 'and'),
                                (24, 'cmp'),
                                (24, 'shr'),
                                (24, 'sub'),
                                (28, 'add'),
                                (28, 'cmp'),
                                (28, 'inc'),
                                (28, 'or'),
                                (28, 'sub'),
                                (29, 'or'),
                                (29, 'test'),
                                (31, 'and'),
                                (31, 'shr'),
                                (32, 'add'),
                                (32, 'cmp'),
                                (32, 'or'),
                                (32, 'sub'),
                                (32, 'test'),
                                (34, 'cmp'),
                                (36, 'add'),
                                (36, 'cmp'),
                                (40, 'add'),
                                (40, 'cmp'),
                                (44, 'cmp'),
                                (44, 'sub'),
                                (48, 'add'),
                                (48, 'cmp'),
                                (48, 'sub'),
                                (49, 'cmp'),
                                (50, 'cmp'),
                                (52, 'cmp'),
                                (55, 'cmp'),
                                (56, 'add'),
                                (56, 'cmp'),
                                (60, 'add'),
                                (61, 'cmp'),
                                (63, 'and'),
                                (64, 'add'),
                                (64, 'and'),
                                (64, 'cmp'),
                                (64, 'test'),
                                (68, 'add'),
                                (72, 'sub'),
                                (76, 'sub'),
                                (80, 'sub'),
                                (83, 'cmp'),
                                (84, 'add'),
                                (84, 'sub'),
                                (92, 'add'),
                                (92, 'cmp'),
                                (97, 'cmp'),
                                (112, 'and'),
                                (112, 'or'),
                                (112, 'test'),
                                (114, 'cmp'),
                                (119, 'cmp'),
                                (127, 'and'),
                                (128, 'and'),
                                (128, 'test'),
                                (130, 'and'),
                                (130, 'cmp'),
                                (130, 'test'),
                                (131, 'test'),
                                (144, 'cmp'),
                                (148, 'sub'),
                                (152, 'sub'),
                                (180, 'add'),
                                (224, 'cmp'),
                                (228, 'add'),
                                (228, 'and'),
                                (239, 'and'),
                                (240, 'cmp'),
                                (245, 'add'),
                                (248, 'and'),
                                (252, 'cmp'),
                                (253, 'cmp'),
                                (254, 'cmp'),
                                (255, 'and'),
                                (255, 'cmp'),
                                (255, 'or'),
                                (255, 'sbb'),
                                (255, 'xor'),
                                (256, 'cmp'),
                                (257, 'cmp'),
                                (264, 'and'),
                                (264, 'test'),
                                (268, 'test'),
                                (340, 'cmp'),
                                (480, 'sub'),
                                (492, 'add'),
                                (512, 'cmp'),
                                (624, 'sub'),
                                (768, 'cmp'),
                                (1024, 'cmp'),
                                (1308, 'sub'),
                                (2048, 'add'),
                                (4096, 'sub'),
                                (4096, 'test'),
                                (6848, 'and'),
                                (6856, 'cmp'),
                                (6864, 'sub'),
                                (17744, 'cmp'),
                                (32768, 'test'),
                                (56797, 'cmp'),
                                (65000, 'cmp'),
                                (65001, 'cmp'),
                                (65536, 'or'),
                                (524288, 'or'),
                                (2097152, 'xor'),
                                (4194304, 'cmp'),
                                (4194304, 'sub'),
                                (4194328, 'cmp'),
                                (4194420, 'cmp'),
                                (4194536, 'cmp'),
                                (4328008, 'xor'),
                                (4328264, 'xor'),
                                (4328520, 'xor'),
                                (4328776, 'xor'),
                                (4329032, 'xor'),
                                (4329288, 'xor'),
                                (4330668, 'test'),
                                (4330744, 'cmp'),
                                (4365360, 'cmp'),
                                (4365412, 'cmp'),
                                (4365952, 'cmp'),
                                (4366448, 'cmp'),
                                (4366480, 'cmp'),
                                (4366764, 'cmp'),
                                (4367328, 'cmp'),
                                (4368392, 'cmp'),
                                (4368400, 'cmp'),
                                (4368640, 'test'),
                                (4368872, 'cmp'),
                                (4370080, 'cmp'),
                                (4370108, 'cmp'),
                                (4373288, 'cmp'),
                                (4373436, 'and'),
                                (4373472, 'cmp'),
                                (4373480, 'inc'),
                                (4373492, 'cmp'),
                                (4374316, 'cmp'),
                                (4374716, 'cmp'),
                                (4374724, 'cmp'),
                                (4380500, 'cmp'),
                                (4380540, 'and'),
                                (4380548, 'cmp'),
                                (4380576, 'add'),
                                (4380576, 'sub'),
                                (4380844, 'cmp'),
                                (4380848, 'cmp'),
                                (4380876, 'cmp'),
                                (4380880, 'cmp'),
                                (4384992, 'cmp'),
                                (16711680, 'test'),
                                (16711935, 'and'),
                                (858993459, 'and'),
                                (1073741823, 'cmp'),
                                (2147483632, 'cmp'),
                                (2147483647, 'cmp'),
                                (2164326656, 'test'),
                                (2863311530, 'and'),
                                (4042322160, 'and'),
                                (4243651808, 'test'),
                                (4278190080, 'test'),
                                (4294443007, 'and'),
                                (4294901760, 'and'),
                                (4294963200, 'and'),
                                (4294966911, 'and')]),
         'openssl': frozenset([(1, 'cmp'),
                               (1, 'shr'),
                               (2, 'add'),
                               (2, 'shr'),
                               (3, 'ror'),
                               (4, 'add'),
                               (4, 'and'),
                               (4, 'cmp'),
                               (4, 'ror'),
                               (4, 'shl'),
                               (4, 'shr'),
                               (4, 'test'),
                               (4, 'xor'),
                               (6, 'shr'),
                               (7, 'shr'),
                               (8, 'add'),
                               (8, 'and'),
                               (8, 'cmp'),
                               (8, 'shl'),
                               (8, 'shr'),
                               (8, 'xor'),
                               (10, 'shr'),
                               (12, 'add'),
                               (12, 'shr'),
                               (13, 'shr'),
                               (15, 'shr'),
                               (16, 'add'),
                               (16, 'shl'),
                               (16, 'shr'),
                               (16, 'sub'),
                               (16, 'xor'),
                               (18, 'shl'),
                               (18, 'shr'),
                               (20, 'add'),
                               (20, 'shr'),
                               (21, 'shr'),
                               (24, 'add'),
                               (24, 'or'),
                               (24, 'shl'),
                               (24, 'shr'),
                               (24, 'sub'),
                               (26, 'ror'),
                               (26, 'shl'),
                               (26, 'shr'),
                               (27, 'shl'),
                               (28, 'cmp'),
                               (28, 'or'),
                               (29, 'ror'),
                               (30, 'ror'),
                               (32, 'add'),
                               (48, 'add'),
                               (63, 'and'),
                               (116, 'cmp'),
                               (172, 'sub'),
                               (192, 'and'),
                               (232, 'cmp'),
                               (248, 'and'),
                               (255, 'cmp'),
                               (267, 'cmp'),
                               (384, 'and'),
                               (3840, 'and'),
                               (4080, 'and'),
                               (7680, 'and'),
                               (17744, 'cmp'),
                               (65280, 'and'),
                               (65535, 'and'),
                               (122880, 'and'),
                               (393216, 'and'),
                               (1048576, 'and'),
                               (2097152, 'xor'),
                               (4194304, 'cmp'),
                               (4219248, 'xor'),
                               (4219504, 'xor'),
                               (4219760, 'xor'),
                               (4220016, 'xor'),
                               (4220272, 'xor'),
                               (4220784, 'xor'),
                               (4221040, 'xor'),
                               (4221768, 'or'),
                               (4222024, 'or'),
                               (4222280, 'or'),
                               (4222792, 'or'),
                               (4223048, 'or'),
                               (4223304, 'or'),
                               (4247628, 'cmp'),
                               (4281360, 'cmp'),
                               (4281376, 'cmp'),
                               (4281380, 'cmp'),
                               (4287344, 'cmp'),
                               (4288216, 'cmp'),
                               (12582912, 'and'),
                               (16711935, 'and'),
                               (31457280, 'and'),
                               (100663296, 'and'),
                               (117440512, 'and'),
                               (252645135, 'and'),
                               (268435455, 'and'),
                               (858993459, 'and'),
                               (1431655765, 'and'),
                               (3435921408, 'and'),
                               (4026531855, 'and'),
                               (4294901760, 'and'),
                               (4294963200, 'and')])},
 'md5': {'beecrypt': frozenset([(1, 'sub'),
                                (4, 'add'),
                                (4, 'and'),
                                (4, 'rol'),
                                (4, 'xor'),
                                (5, 'rol'),
                                (5, 'shr'),
                                (6, 'rol'),
                                (7, 'rol'),
                                (8, 'add'),
                                (8, 'and'),
                                (8, 'shr'),
                                (8, 'sub'),
                                (8, 'xor'),
                                (9, 'rol'),
                                (10, 'rol'),
                                (11, 'rol'),
                                (12, 'add'),
                                (12, 'rol'),
                                (14, 'rol'),
                                (15, 'rol'),
                                (16, 'add'),
                                (16, 'rol'),
                                (16, 'sub'),
                                (16, 'xor'),
                                (17, 'rol'),
                                (20, 'add'),
                                (20, 'rol'),
                                (21, 'rol'),
                                (22, 'rol'),
                                (23, 'rol'),
                                (24, 'add'),
                                (28, 'add'),
                                (28, 'cmp'),
                                (31, 'and'),
                                (32, 'add'),
                                (36, 'add'),
                                (40, 'add'),
                                (44, 'add'),
                                (48, 'add'),
                                (52, 'add'),
                                (56, 'add'),
                                (56, 'cmp'),
                                (60, 'add'),
                                (64, 'add'),
                                (64, 'cmp'),
                                (68, 'add'),
                                (72, 'add'),
                                (76, 'add'),
                                (88, 'add'),
                                (88, 'cmp'),
                                (116, 'cmp'),
                                (232, 'cmp'),
                                (255, 'cmp'),
                                (267, 'cmp'),
                                (4096, 'sub'),
                                (16496, 'add'),
                                (16500, 'cmp'),
                                (17744, 'cmp'),
                                (4194304, 'cmp'),
                                (4206592, 'cmp'),
                                (4206608, 'cmp'),
                                (4206612, 'cmp'),
                                (4206636, 'cmp'),
                                (4207496, 'cmp'),
                                (4294963200, 'and')]),
         'cryptopp': frozenset([(1, 'add'),
                                (1, 'and'),
                                (1, 'cmp'),
                                (1, 'or'),
                                (1, 'sar'),
                                (1, 'sub'),
                                (1, 'test'),
                                (2, 'cmp'),
                                (2, 'or'),
                                (2, 'shl'),
                                (2, 'shr'),
                                (2, 'test'),
                                (2, 'xor'),
                                (3, 'add'),
                                (3, 'and'),
                                (3, 'cmp'),
                                (3, 'test'),
                                (4, 'add'),
                                (4, 'and'),
                                (4, 'cmp'),
                                (4, 'dec'),
                                (4, 'inc'),
                                (4, 'or'),
                                (4, 'rol'),
                                (4, 'sub'),
                                (4, 'test'),
                                (4, 'xor'),
                                (5, 'cmp'),
                                (5, 'rol'),
                                (5, 'sar'),
                                (5, 'shl'),
                                (6, 'rol'),
                                (6, 'sar'),
                                (6, 'shl'),
                                (7, 'rol'),
                                (7, 'shl'),
                                (8, 'add'),
                                (8, 'and'),
                                (8, 'cmp'),
                                (8, 'dec'),
                                (8, 'inc'),
                                (8, 'shl'),
                                (8, 'sub'),
                                (8, 'test'),
                                (8, 'xor'),
                                (9, 'cmp'),
                                (9, 'rol'),
                                (10, 'rol'),
                                (11, 'rol'),
                                (12, 'add'),
                                (12, 'and'),
                                (12, 'cmp'),
                                (12, 'div'),
                                (12, 'imul'),
                                (12, 'inc'),
                                (12, 'or'),
                                (12, 'rol'),
                                (12, 'sub'),
                                (12, 'test'),
                                (14, 'rol'),
                                (14, 'sub'),
                                (15, 'and'),
                                (15, 'rol'),
                                (16, 'add'),
                                (16, 'and'),
                                (16, 'cmp'),
                                (16, 'div'),
                                (16, 'imul'),
                                (16, 'or'),
                                (16, 'rol'),
                                (16, 'shl'),
                                (16, 'shr'),
                                (16, 'sub'),
                                (16, 'test'),
                                (16, 'xor'),
                                (17, 'rol'),
                                (19, 'cmp'),
                                (20, 'add'),
                                (20, 'and'),
                                (20, 'cmp'),
                                (20, 'imul'),
                                (20, 'rol'),
                                (20, 'sub'),
                                (21, 'rol'),
                                (22, 'rol'),
                                (23, 'rol'),
                                (24, 'add'),
                                (24, 'and'),
                                (24, 'cmp'),
                                (24, 'sub'),
                                (28, 'add'),
                                (28, 'cmp'),
                                (28, 'inc'),
                                (28, 'or'),
                                (28, 'sub'),
                                (29, 'or'),
                                (29, 'shr'),
                                (29, 'test'),
                                (31, 'and'),
                                (32, 'add'),
                                (32, 'cmp'),
                                (32, 'or'),
                                (32, 'sub'),
                                (32, 'test'),
                                (34, 'cmp'),
                                (36, 'add'),
                                (36, 'cmp'),
                                (40, 'add'),
                                (40, 'cmp'),
                                (44, 'add'),
                                (48, 'add'),
                                (48, 'sub'),
                                (50, 'cmp'),
                                (52, 'add'),
                                (56, 'add'),
                                (60, 'add'),
                                (60, 'sub'),
                                (61, 'cmp'),
                                (64, 'add'),
                                (64, 'and'),
                                (64, 'cmp'),
                                (64, 'test'),
                                (68, 'add'),
                                (72, 'add'),
                                (80, 'sub'),
                                (83, 'cmp'),
                                (84, 'add'),
                                (84, 'sub'),
                                (92, 'add'),
                                (92, 'cmp'),
                                (97, 'cmp'),
                                (112, 'and'),
                                (112, 'or'),
                                (112, 'test'),
                                (114, 'cmp'),
                                (116, 'add'),
                                (119, 'cmp'),
                                (127, 'and'),
                                (128, 'and'),
                                (128, 'test'),
                                (130, 'and'),
                                (130, 'cmp'),
                                (130, 'test'),
                                (131, 'test'),
                                (180, 'add'),
                                (212, 'sub'),
                                (224, 'add'),
                                (224, 'cmp'),
                                (239, 'and'),
                                (240, 'cmp'),
                                (245, 'add'),
                                (248, 'and'),
                                (252, 'cmp'),
                                (253, 'cmp'),
                                (254, 'cmp'),
                                (255, 'and'),
                                (255, 'cmp'),
                                (255, 'or'),
                                (255, 'xor'),
                                (256, 'cmp'),
                                (257, 'cmp'),
                                (264, 'and'),
                                (264, 'test'),
                                (268, 'test'),
                                (512, 'cmp'),
                                (768, 'cmp'),
                                (1024, 'cmp'),
                                (1228, 'cmp'),
                                (1240, 'sub'),
                                (1308, 'sub'),
                                (2048, 'add'),
                                (4096, 'sub'),
                                (4096, 'test'),
                                (6848, 'and'),
                                (6856, 'cmp'),
                                (6864, 'sub'),
                                (32768, 'test'),
                                (56797, 'cmp'),
                                (65000, 'cmp'),
                                (65001, 'cmp'),
                                (2097152, 'xor'),
                                (4194304, 'cmp'),
                                (4194328, 'cmp'),
                                (4194420, 'cmp'),
                                (4194536, 'cmp'),
                                (4276276, 'cmp'),
                                (4276324, 'cmp'),
                                (4276848, 'cmp'),
                                (4277344, 'cmp'),
                                (4277376, 'cmp'),
                                (4277948, 'cmp'),
                                (4278256, 'cmp'),
                                (4279320, 'cmp'),
                                (4279328, 'cmp'),
                                (4279572, 'test'),
                                (4279800, 'cmp'),
                                (4280452, 'cmp'),
                                (4280480, 'cmp'),
                                (4281832, 'cmp'),
                                (4281856, 'and'),
                                (4281884, 'inc'),
                                (4281896, 'cmp'),
                                (4282772, 'cmp'),
                                (4282780, 'cmp'),
                                (4283844, 'cmp'),
                                (4284392, 'cmp'),
                                (4284632, 'cmp'),
                                (4284636, 'cmp'),
                                (4284640, 'add'),
                                (4284640, 'sub'),
                                (4284908, 'cmp'),
                                (4284912, 'cmp'),
                                (4284916, 'cmp'),
                                (4284920, 'cmp'),
                                (4289024, 'cmp'),
                                (16711680, 'test'),
                                (1073741823, 'cmp'),
                                (2147483632, 'cmp'),
                                (2147483647, 'cmp'),
                                (2164326656, 'test'),
                                (4278190080, 'test'),
                                (4294963200, 'and'),
                                (4294966911, 'and')]),
         'openssl': frozenset([(2, 'shr'),
                               (3, 'and'),
                               (4, 'add'),
                               (4, 'and'),
                               (4, 'rol'),
                               (4, 'xor'),
                               (5, 'rol'),
                               (6, 'rol'),
                               (6, 'shl'),
                               (6, 'shr'),
                               (7, 'rol'),
                               (8, 'add'),
                               (8, 'and'),
                               (8, 'shl'),
                               (8, 'shr'),
                               (8, 'xor'),
                               (9, 'rol'),
                               (10, 'rol'),
                               (11, 'rol'),
                               (12, 'add'),
                               (12, 'cmp'),
                               (12, 'rol'),
                               (14, 'cmp'),
                               (14, 'rol'),
                               (15, 'rol'),
                               (16, 'add'),
                               (16, 'rol'),
                               (16, 'shl'),
                               (16, 'shr'),
                               (16, 'sub'),
                               (16, 'xor'),
                               (17, 'rol'),
                               (20, 'add'),
                               (20, 'and'),
                               (20, 'rol'),
                               (20, 'xor'),
                               (21, 'rol'),
                               (22, 'rol'),
                               (23, 'rol'),
                               (24, 'add'),
                               (24, 'shl'),
                               (24, 'shr'),
                               (28, 'add'),
                               (28, 'cmp'),
                               (28, 'dec'),
                               (29, 'shr'),
                               (32, 'add'),
                               (36, 'add'),
                               (40, 'add'),
                               (44, 'add'),
                               (48, 'add'),
                               (52, 'add'),
                               (56, 'add'),
                               (64, 'add'),
                               (76, 'add'),
                               (84, 'add'),
                               (104, 'add'),
                               (112, 'add'),
                               (116, 'cmp'),
                               (232, 'cmp'),
                               (255, 'cmp'),
                               (267, 'cmp'),
                               (4096, 'sub'),
                               (16404, 'add'),
                               (16408, 'cmp'),
                               (17744, 'cmp'),
                               (4194304, 'cmp'),
                               (4210688, 'cmp'),
                               (4210704, 'cmp'),
                               (4210708, 'cmp'),
                               (4210732, 'cmp'),
                               (4211592, 'cmp'),
                               (4294963200, 'and')])},
 'rc4': {'cryptopp': frozenset([(1, 'add'),
                                (1, 'and'),
                                (1, 'cmp'),
                                (1, 'or'),
                                (1, 'sar'),
                                (1, 'sub'),
                                (1, 'test'),
                                (2, 'cmp'),
                                (2, 'or'),
                                (2, 'shl'),
                                (2, 'shr'),
                                (2, 'test'),
                                (2, 'xor'),
                                (3, 'add'),
                                (3, 'and'),
                                (3, 'cmp'),
                                (3, 'test'),
                                (4, 'add'),
                                (4, 'and'),
                                (4, 'cmp'),
                                (4, 'dec'),
                                (4, 'inc'),
                                (4, 'or'),
                                (4, 'sub'),
                                (4, 'test'),
                                (4, 'xor'),
                                (5, 'cmp'),
                                (5, 'sar'),
                                (5, 'shl'),
                                (6, 'sar'),
                                (6, 'shl'),
                                (7, 'shl'),
                                (7, 'shr'),
                                (8, 'add'),
                                (8, 'and'),
                                (8, 'cmp'),
                                (8, 'dec'),
                                (8, 'inc'),
                                (8, 'shl'),
                                (8, 'sub'),
                                (8, 'test'),
                                (8, 'xor'),
                                (9, 'cmp'),
                                (12, 'add'),
                                (12, 'and'),
                                (12, 'cmp'),
                                (12, 'div'),
                                (12, 'imul'),
                                (12, 'inc'),
                                (12, 'or'),
                                (12, 'sub'),
                                (12, 'test'),
                                (14, 'sub'),
                                (15, 'and'),
                                (16, 'add'),
                                (16, 'and'),
                                (16, 'cmp'),
                                (16, 'div'),
                                (16, 'imul'),
                                (16, 'or'),
                                (16, 'shl'),
                                (16, 'shr'),
                                (16, 'sub'),
                                (16, 'test'),
                                (16, 'xor'),
                                (20, 'add'),
                                (20, 'cmp'),
                                (20, 'imul'),
                                (20, 'sub'),
                                (24, 'add'),
                                (24, 'and'),
                                (24, 'cmp'),
                                (24, 'sub'),
                                (28, 'add'),
                                (28, 'cmp'),
                                (28, 'inc'),
                                (28, 'or'),
                                (28, 'sub'),
                                (29, 'or'),
                                (29, 'test'),
                                (31, 'and'),
                                (32, 'add'),
                                (32, 'cmp'),
                                (32, 'or'),
                                (32, 'sub'),
                                (32, 'test'),
                                (34, 'cmp'),
                                (36, 'add'),
                                (36, 'cmp'),
                                (40, 'cmp'),
                                (48, 'add'),
                                (48, 'sub'),
                                (50, 'cmp'),
                                (61, 'cmp'),
                                (64, 'add'),
                                (64, 'and'),
                                (64, 'cmp'),
                                (64, 'test'),
                                (68, 'add'),
                                (72, 'sub'),
                                (83, 'cmp'),
                                (84, 'add'),
                                (84, 'sub'),
                                (92, 'cmp'),
                                (97, 'cmp'),
                                (112, 'and'),
                                (112, 'or'),
                                (112, 'test'),
                                (114, 'cmp'),
                                (119, 'cmp'),
                                (127, 'and'),
                                (128, 'and'),
                                (128, 'test'),
                                (130, 'and'),
                                (130, 'cmp'),
                                (130, 'test'),
                                (131, 'test'),
                                (156, 'cmp'),
                                (164, 'cmp'),
                                (180, 'add'),
                                (224, 'cmp'),
                                (239, 'and'),
                                (240, 'cmp'),
                                (245, 'add'),
                                (248, 'and'),
                                (252, 'cmp'),
                                (253, 'cmp'),
                                (254, 'cmp'),
                                (255, 'and'),
                                (255, 'cmp'),
                                (255, 'or'),
                                (255, 'xor'),
                                (256, 'cmp'),
                                (257, 'cmp'),
                                (264, 'and'),
                                (264, 'test'),
                                (268, 'test'),
                                (512, 'cmp'),
                                (768, 'cmp'),
                                (1024, 'cmp'),
                                (1308, 'sub'),
                                (1492, 'cmp'),
                                (2048, 'add'),
                                (2512, 'sub'),
                                (4096, 'sub'),
                                (4096, 'test'),
                                (6848, 'and'),
                                (6856, 'cmp'),
                                (6864, 'sub'),
                                (32768, 'test'),
                                (56797, 'cmp'),
                                (65000, 'cmp'),
                                (65001, 'cmp'),
                                (2097152, 'xor'),
                                (4194304, 'cmp'),
                                (4194328, 'cmp'),
                                (4194420, 'cmp'),
                                (4194536, 'cmp'),
                                (4276288, 'cmp'),
                                (4276340, 'cmp'),
                                (4276864, 'cmp'),
                                (4277360, 'cmp'),
                                (4277392, 'cmp'),
                                (4277964, 'cmp'),
                                (4278272, 'cmp'),
                                (4279336, 'cmp'),
                                (4279344, 'cmp'),
                                (4279588, 'test'),
                                (4279816, 'cmp'),
                                (4281492, 'cmp'),
                                (4281520, 'cmp'),
                                (4281704, 'cmp'),
                                (4281728, 'and'),
                                (4281756, 'inc'),
                                (4281768, 'cmp'),
                                (4282644, 'cmp'),
                                (4282652, 'cmp'),
                                (4283716, 'cmp'),
                                (4284268, 'cmp'),
                                (4284512, 'cmp'),
                                (4284516, 'cmp'),
                                (4284544, 'add'),
                                (4284544, 'sub'),
                                (4284812, 'cmp'),
                                (4284816, 'cmp'),
                                (4284820, 'cmp'),
                                (4284824, 'cmp'),
                                (4288928, 'cmp'),
                                (16711680, 'test'),
                                (1073741823, 'cmp'),
                                (2147483632, 'cmp'),
                                (2147483647, 'cmp'),
                                (2164326656, 'test'),
                                (4278190080, 'test'),
                                (4294963200, 'and'),
                                (4294966911, 'and')]),
         'openssl': frozenset([(1, 'xor'),
                               (2, 'xor'),
                               (3, 'shr'),
                               (3, 'xor'),
                               (4, 'and'),
                               (4, 'xor'),
                               (5, 'xor'),
                               (6, 'xor'),
                               (7, 'and'),
                               (7, 'xor'),
                               (8, 'add'),
                               (8, 'and'),
                               (8, 'cmp'),
                               (8, 'xor'),
                               (12, 'add'),
                               (16, 'add'),
                               (16, 'sub'),
                               (16, 'xor'),
                               (20, 'add'),
                               (20, 'sub'),
                               (24, 'add'),
                               (24, 'cmp'),
                               (28, 'cmp'),
                               (40, 'add'),
                               (48, 'add'),
                               (116, 'cmp'),
                               (232, 'cmp'),
                               (248, 'and'),
                               (255, 'and'),
                               (255, 'cmp'),
                               (256, 'cmp'),
                               (267, 'cmp'),
                               (3220, 'sub'),
                               (17744, 'cmp'),
                               (4194304, 'cmp'),
                               (4206592, 'cmp'),
                               (4206608, 'cmp'),
                               (4206612, 'cmp'),
                               (4206628, 'cmp'),
                               (4207488, 'cmp')])},
 'rsa': {'cryptopp': frozenset([(1, 'add'),
                                (1, 'and'),
                                (1, 'cmp'),
                                (1, 'or'),
                                (1, 'rol'),
                                (1, 'sar'),
                                (1, 'shl'),
                                (1, 'shr'),
                                (1, 'sub'),
                                (1, 'test'),
                                (1, 'xor'),
                                (2, 'add'),
                                (2, 'and'),
                                (2, 'cmp'),
                                (2, 'or'),
                                (2, 'ror'),
                                (2, 'sar'),
                                (2, 'shl'),
                                (2, 'shr'),
                                (2, 'sub'),
                                (2, 'test'),
                                (2, 'xor'),
                                (3, 'add'),
                                (3, 'and'),
                                (3, 'cmp'),
                                (3, 'sar'),
                                (3, 'shr'),
                                (3, 'test'),
                                (3, 'xor'),
                                (4, 'adc'),
                                (4, 'add'),
                                (4, 'and'),
                                (4, 'cmp'),
                                (4, 'dec'),
                                (4, 'inc'),
                                (4, 'mul'),
                                (4, 'or'),
                                (4, 'paddd'),
                                (4, 'sar'),
                                (4, 'sbb'),
                                (4, 'shl'),
                                (4, 'sub'),
                                (4, 'test'),
                                (4, 'xor'),
                                (5, 'cmp'),
                                (5, 'rol'),
                                (5, 'ror'),
                                (5, 'sar'),
                                (5, 'shl'),
                                (5, 'shr'),
                                (6, 'ror'),
                                (6, 'sar'),
                                (6, 'shl'),
                                (7, 'add'),
                                (7, 'and'),
                                (7, 'cmp'),
                                (7, 'ror'),
                                (7, 'shl'),
                                (7, 'shr'),
                                (8, 'adc'),
                                (8, 'add'),
                                (8, 'and'),
                                (8, 'cmp'),
                                (8, 'dec'),
                                (8, 'inc'),
                                (8, 'mul'),
                                (8, 'or'),
                                (8, 'sbb'),
                                (8, 'shl'),
                                (8, 'shld'),
                                (8, 'shr'),
                                (8, 'sub'),
                                (8, 'test'),
                                (8, 'xor'),
                                (9, 'add'),
                                (9, 'cmp'),
                                (10, 'cmp'),
                                (10, 'shr'),
                                (11, 'ror'),
                                (12, 'adc'),
                                (12, 'add'),
                                (12, 'and'),
                                (12, 'cmp'),
                                (12, 'div'),
                                (12, 'imul'),
                                (12, 'inc'),
                                (12, 'mul'),
                                (12, 'or'),
                                (12, 'sbb'),
                                (12, 'sub'),
                                (12, 'test'),
                                (12, 'xor'),
                                (14, 'sub'),
                                (15, 'and'),
                                (16, 'adc'),
                                (16, 'add'),
                                (16, 'and'),
                                (16, 'cmp'),
                                (16, 'div'),
                                (16, 'imul'),
                                (16, 'or'),
                                (16, 'pmuludq'),
                                (16, 'shl'),
                                (16, 'shr'),
                                (16, 'sub'),
                                (16, 'test'),
                                (16, 'xor'),
                                (17, 'cmp'),
                                (17, 'ror'),
                                (19, 'cmp'),
                                (20, 'add'),
                                (20, 'and'),
                                (20, 'cmp'),
                                (20, 'dec'),
                                (20, 'imul'),
                                (20, 'mul'),
                                (20, 'or'),
                                (20, 'paddd'),
                                (20, 'sbb'),
                                (20, 'sub'),
                                (20, 'xor'),
                                (22, 'ror'),
                                (23, 'and'),
                                (23, 'cmp'),
                                (23, 'shr'),
                                (24, 'adc'),
                                (24, 'add'),
                                (24, 'and'),
                                (24, 'cmp'),
                                (24, 'imul'),
                                (24, 'inc'),
                                (24, 'shr'),
                                (24, 'sub'),
                                (24, 'test'),
                                (24, 'xor'),
                                (25, 'cmp'),
                                (25, 'ror'),
                                (25, 'shl'),
                                (28, 'adc'),
                                (28, 'add'),
                                (28, 'and'),
                                (28, 'cmp'),
                                (28, 'inc'),
                                (28, 'or'),
                                (28, 'sub'),
                                (28, 'xor'),
                                (29, 'or'),
                                (29, 'shr'),
                                (29, 'test'),
                                (30, 'rol'),
                                (31, 'add'),
                                (31, 'and'),
                                (31, 'shr'),
                                (32, 'add'),
                                (32, 'and'),
                                (32, 'cmp'),
                                (32, 'or'),
                                (32, 'pmuludq'),
                                (32, 'sub'),
                                (32, 'test'),
                                (32, 'xor'),
                                (34, 'cmp'),
                                (36, 'add'),
                                (36, 'cmp'),
                                (36, 'or'),
                                (36, 'sub'),
                                (36, 'test'),
                                (36, 'xor'),
                                (37, 'cmp'),
                                (40, 'add'),
                                (40, 'cmp'),
                                (40, 'inc'),
                                (40, 'sub'),
                                (40, 'xor'),
                                (44, 'add'),
                                (44, 'cmp'),
                                (44, 'sub'),
                                (44, 'xor'),
                                (45, 'cmp'),
                                (48, 'add'),
                                (48, 'cmp'),
                                (48, 'or'),
                                (48, 'pmuludq'),
                                (48, 'sub'),
                                (48, 'xor'),
                                (50, 'cmp'),
                                (52, 'add'),
                                (52, 'cmp'),
                                (52, 'sub'),
                                (52, 'xor'),
                                (53, 'cmp'),
                                (54, 'cmp'),
                                (55, 'cmp'),
                                (56, 'add'),
                                (56, 'cmp'),
                                (56, 'sub'),
                                (56, 'xor'),
                                (60, 'add'),
                                (60, 'cmp'),
                                (60, 'sub'),
                                (60, 'xor'),
                                (61, 'cmp'),
                                (63, 'and'),
                                (64, 'add'),
                                (64, 'and'),
                                (64, 'cmp'),
                                (64, 'pmuludq'),
                                (64, 'test'),
                                (64, 'xor'),
                                (67, 'cmp'),
                                (68, 'add'),
                                (68, 'sub'),
                                (68, 'xor'),
                                (72, 'add'),
                                (72, 'cmp'),
                                (72, 'sub'),
                                (72, 'xor'),
                                (76, 'add'),
                                (76, 'cmp'),
                                (76, 'sub'),
                                (76, 'xor'),
                                (77, 'cmp'),
                                (80, 'add'),
                                (80, 'cmp'),
                                (80, 'pmuludq'),
                                (80, 'sub'),
                                (80, 'xor'),
                                (83, 'cmp'),
                                (84, 'add'),
                                (84, 'cmp'),
                                (84, 'sub'),
                                (84, 'xor'),
                                (88, 'add'),
                                (88, 'or'),
                                (88, 'sub'),
                                (88, 'xor'),
                                (92, 'add'),
                                (92, 'cmp'),
                                (92, 'sub'),
                                (96, 'add'),
                                (96, 'pmuludq'),
                                (97, 'cmp'),
                                (100, 'cmp'),
                                (100, 'sub'),
                                (104, 'cmp'),
                                (104, 'sub'),
                                (108, 'add'),
                                (108, 'and'),
                                (108, 'or'),
                                (108, 'sub'),
                                (108, 'xor'),
                                (112, 'and'),
                                (112, 'cmp'),
                                (112, 'or'),
                                (112, 'pmuludq'),
                                (112, 'sub'),
                                (112, 'test'),
                                (114, 'cmp'),
                                (116, 'add'),
                                (117, 'cmp'),
                                (119, 'cmp'),
                                (120, 'add'),
                                (124, 'sub'),
                                (127, 'and'),
                                (128, 'and'),
                                (128, 'cmp'),
                                (128, 'or'),
                                (128, 'pmuludq'),
                                (128, 'test'),
                                (130, 'and'),
                                (130, 'cmp'),
                                (130, 'test'),
                                (131, 'test'),
                                (136, 'add'),
                                (136, 'sub'),
                                (140, 'inc'),
                                (140, 'sub'),
                                (144, 'cmp'),
                                (152, 'sub'),
                                (156, 'add'),
                                (156, 'cmp'),
                                (156, 'sub'),
                                (157, 'cmp'),
                                (160, 'sub'),
                                (164, 'add'),
                                (168, 'add'),
                                (168, 'or'),
                                (168, 'sub'),
                                (175, 'add'),
                                (180, 'add'),
                                (180, 'sub'),
                                (188, 'cmp'),
                                (192, 'and'),
                                (192, 'cmp'),
                                (192, 'sub'),
                                (208, 'sub'),
                                (212, 'sub'),
                                (224, 'add'),
                                (224, 'cmp'),
                                (228, 'sub'),
                                (236, 'add'),
                                (239, 'and'),
                                (240, 'and'),
                                (240, 'cmp'),
                                (245, 'add'),
                                (248, 'add'),
                                (248, 'and'),
                                (252, 'add'),
                                (252, 'and'),
                                (252, 'cmp'),
                                (253, 'and'),
                                (253, 'cmp'),
                                (254, 'add'),
                                (254, 'cmp'),
                                (255, 'and'),
                                (255, 'cmp'),
                                (255, 'or'),
                                (255, 'sbb'),
                                (255, 'test'),
                                (255, 'xor'),
                                (256, 'cmp'),
                                (256, 'sub'),
                                (257, 'cmp'),
                                (259, 'and'),
                                (264, 'and'),
                                (264, 'test'),
                                (268, 'test'),
                                (283, 'imul'),
                                (344, 'sub'),
                                (356, 'add'),
                                (356, 'sub'),
                                (400, 'sub'),
                                (448, 'xor'),
                                (452, 'xor'),
                                (464, 'xor'),
                                (468, 'xor'),
                                (512, 'cmp'),
                                (524, 'sub'),
                                (528, 'sub'),
                                (564, 'cmp'),
                                (720, 'pxor'),
                                (736, 'paddd'),
                                (768, 'cmp'),
                                (772, 'test'),
                                (776, 'add'),
                                (784, 'sub'),
                                (836, 'cmp'),
                                (1024, 'cmp'),
                                (1308, 'sub'),
                                (1560, 'sub'),
                                (2048, 'add'),
                                (2048, 'cmp'),
                                (3840, 'and'),
                                (3840, 'cmp'),
                                (4095, 'and'),
                                (4096, 'sub'),
                                (4096, 'test'),
                                (6848, 'and'),
                                (6856, 'cmp'),
                                (6864, 'sub'),
                                (17744, 'cmp'),
                                (32768, 'or'),
                                (32768, 'test'),
                                (49152, 'test'),
                                (56797, 'cmp'),
                                (65000, 'cmp'),
                                (65001, 'cmp'),
                                (65536, 'or'),
                                (524288, 'or'),
                                (2097152, 'xor'),
                                (4194304, 'cmp'),
                                (4194304, 'sub'),
                                (4194328, 'cmp'),
                                (4194420, 'cmp'),
                                (4194536, 'cmp'),
                                (4557640, 'cmp'),
                                (4576232, 'cmp'),
                                (4576308, 'cmp'),
                                (4632912, 'cmp'),
                                (4632960, 'cmp'),
                                (4633504, 'cmp'),
                                (4634000, 'cmp'),
                                (4634032, 'cmp'),
                                (4634316, 'cmp'),
                                (4634880, 'cmp'),
                                (4635944, 'cmp'),
                                (4635952, 'cmp'),
                                (4636192, 'test'),
                                (4636208, 'cmp'),
                                (4636424, 'cmp'),
                                (4636448, 'cmp'),
                                (4636640, 'cmp'),
                                (4643944, 'cmp'),
                                (4643972, 'cmp'),
                                (4644000, 'cmp'),
                                (4650208, 'add'),
                                (4650304, 'cmp'),
                                (4650308, 'cmp'),
                                (4650312, 'and'),
                                (4650324, 'cmp'),
                                (4650348, 'cmp'),
                                (4650524, 'and'),
                                (4650552, 'cmp'),
                                (4650556, 'cmp'),
                                (4650568, 'inc'),
                                (4650580, 'cmp'),
                                (4651412, 'cmp'),
                                (4652608, 'cmp'),
                                (4652616, 'cmp'),
                                (4653316, 'cmp'),
                                (4657616, 'cmp'),
                                (4657624, 'cmp'),
                                (4657626, 'cmp'),
                                (4657628, 'cmp'),
                                (4657631, 'cmp'),
                                (4658672, 'or'),
                                (4658672, 'test'),
                                (4658688, 'or'),
                                (4658688, 'test'),
                                (4658696, 'or'),
                                (4658696, 'test'),
                                (4658716, 'or'),
                                (4658716, 'test'),
                                (4658736, 'cmp'),
                                (4658760, 'and'),
                                (4658768, 'cmp'),
                                (4658784, 'add'),
                                (4658784, 'sub'),
                                (4659052, 'cmp'),
                                (4659056, 'cmp'),
                                (4659084, 'cmp'),
                                (4659088, 'cmp'),
                                (4663200, 'cmp'),
                                (16711680, 'test'),
                                (33554432, 'test'),
                                (67108864, 'test'),
                                (76695844, 'cmp'),
                                (178956970, 'cmp'),
                                (452984832, 'imul'),
                                (717324288, 'add'),
                                (1073741823, 'cmp'),
                                (2147483632, 'cmp'),
                                (2147483647, 'cmp'),
                                (2147483655, 'and'),
                                (2164326656, 'test'),
                                (4243651808, 'test'),
                                (4267855393, 'adc'),
                                (4278190080, 'and'),
                                (4278190080, 'test'),
                                (4294443007, 'and'),
                                (4294963200, 'and'),
                                (4294966911, 'and'),
                                (4294967099, 'and'),
                                (4294967292, 'test')]),
           'openssl': frozenset([(1, 'and'),
                               (1, 'cmp'),
                               (1, 'rol'),
                               (1, 'sar'),
                               (1, 'shr'),
                               (1, 'sub'),
                               (1, 'test'),
                               (2, 'add'),
                               (2, 'and'),
                               (2, 'ror'),
                               (2, 'sar'),
                               (2, 'shr'),
                               (3, 'and'),
                               (3, 'cmp'),
                               (3, 'sar'),
                               (3, 'sub'),
                               (3, 'test'),
                               (4, 'add'),
                               (4, 'cmp'),
                               (4, 'dec'),
                               (4, 'inc'),
                               (4, 'shr'),
                               (4, 'sub'),
                               (4, 'xor'),
                               (5, 'add'),
                               (5, 'rol'),
                               (5, 'sar'),
                               (5, 'shl'),
                               (5, 'test'),
                               (6, 'shl'),
                               (6, 'shr'),
                               (7, 'add'),
                               (7, 'and'),
                               (7, 'cmp'),
                               (8, 'add'),
                               (8, 'and'),
                               (8, 'cmp'),
                               (8, 'shl'),
                               (8, 'shr'),
                               (8, 'sub'),
                               (8, 'test'),
                               (8, 'xor'),
                               (9, 'sar'),
                               (10, 'add'),
                               (10, 'cmp'),
                               (12, 'add'),
                               (12, 'cmp'),
                               (12, 'inc'),
                               (12, 'xor'),
                               (15, 'and'),
                               (15, 'test'),
                               (16, 'add'),
                               (16, 'and'),
                               (16, 'cmp'),
                               (16, 'shr'),
                               (16, 'sub'),
                               (16, 'test'),
                               (16, 'xor'),
                               (20, 'add'),
                               (20, 'cmp'),
                               (20, 'pmuludq'),
                               (20, 'sub'),
                               (20, 'xor'),
                               (23, 'cmp'),
                               (24, 'add'),
                               (24, 'cmp'),
                               (24, 'dec'),
                               (24, 'imul'),
                               (24, 'shr'),
                               (24, 'sub'),
                               (24, 'xor'),
                               (26, 'bt'),
                               (28, 'add'),
                               (28, 'cmp'),
                               (28, 'sub'),
                               (28, 'xor'),
                               (29, 'shr'),
                               (31, 'add'),
                               (31, 'and'),
                               (31, 'sar'),
                               (31, 'shl'),
                               (31, 'shr'),
                               (32, 'add'),
                               (32, 'cmp'),
                               (32, 'imul'),
                               (32, 'inc'),
                               (32, 'sub'),
                               (32, 'xor'),
                               (36, 'add'),
                               (36, 'cmp'),
                               (36, 'xor'),
                               (40, 'add'),
                               (40, 'cmp'),
                               (40, 'xor'),
                               (44, 'add'),
                               (44, 'cmp'),
                               (44, 'xor'),
                               (48, 'add'),
                               (48, 'cmp'),
                               (48, 'xor'),
                               (52, 'xor'),
                               (56, 'add'),
                               (56, 'cmp'),
                               (56, 'sub'),
                               (56, 'xor'),
                               (60, 'cmp'),
                               (60, 'test'),
                               (60, 'xor'),
                               (63, 'sub'),
                               (64, 'add'),
                               (64, 'cmp'),
                               (64, 'sub'),
                               (68, 'add'),
                               (68, 'cmp'),
                               (72, 'add'),
                               (72, 'cmp'),
                               (76, 'cmp'),
                               (79, 'cmp'),
                               (80, 'cmp'),
                               (88, 'cmp'),
                               (88, 'fadd'),
                               (92, 'add'),
                               (92, 'cmp'),
                               (122, 'cmp'),
                               (156, 'add'),
                               (196, 'cmp'),
                               (212, 'cmp'),
                               (224, 'cmp'),
                               (239, 'cmp'),
                               (245, 'add'),
                               (252, 'add'),
                               (254, 'and'),
                               (255, 'add'),
                               (255, 'cmp'),
                               (255, 'or'),
                               (512, 'cmp'),
                               (671, 'cmp'),
                               (1000, 'add'),
                               (1023, 'cmp'),
                               (1023, 'imul'),
                               (2047, 'and'),
                               (2048, 'and'),
                               (2048, 'cmp'),
                               (2048, 'xor'),
                               (3072, 'cmp'),
                               (16384, 'cmp'),
                               (4206628, 'cmp'),
                               (16777215, 'cmp'),
                               (269526464, 'cmp'),
                               (269542272, 'cmp'),
                               (269544000, 'xor'),
                               (269545044, 'xor'),
                               (269545045, 'xor'),
                               (269545046, 'xor'),
                               (269545047, 'xor'),
                               (269545048, 'xor'),
                               (269545072, 'inc'),
                               (269545076, 'add'),
                               (269545088, 'cmp'),
                               (269545092, 'cmp'),
                               (2147483651, 'and'),
                               (2147483679, 'and'),
                               (4278190080, 'test'),
                               (4294901760, 'test'),
                               (4294963200, 'and'),
                               (4294967232, 'and'),
                               (4294967288, 'and'),
                               (4294967288, 'test'),
                               (4294967292, 'test')])

}}
